Python এ JSON ডেটা পার্স করার জন্য json মডিউল ব্যবহৃত হয়। এটি Python প্রোগ্রামে JSON ডেটা স্ট্রিং (যা সাধারণত ওয়েব সার্ভিস থেকে প্রাপ্ত হয়) পাইটন ডাটা স্ট্রাকচারে (যেমন Dictionary, List ইত্যাদি) রূপান্তর করতে ব্যবহৃত হয়। এছাড়াও, Python ডেটা স্ট্রাকচারকে JSON ফরম্যাটে রূপান্তর করতে json মডিউল ব্যবহার করা যায়।
JSON মডিউলের ফাংশন
Python এর json মডিউলে দুটি প্রধান ফাংশন রয়েছে:
json.loads(): JSON স্ট্রিংকে Python ডেটা স্ট্রাকচার (যেমন Dictionary বা List) তে রূপান্তর করে।json.dumps(): Python ডেটা স্ট্রাকচারকে JSON স্ট্রিং এ রূপান্তর করে।
JSON পার্সিং - উদাহরণ:
1. JSON স্ট্রিং পার্স করা (json.loads())
json.loads() ফাংশনটি JSON স্ট্রিংকে Python ডেটা স্ট্রাকচারে রূপান্তর করে।
import json
# JSON স্ট্রিং
json_data = '{"name": "John", "age": 30, "city": "New York"}'
# JSON স্ট্রিং পার্স করে Python Dictionary তে রূপান্তর
data = json.loads(json_data)
print(data)
print(type(data)) # <class 'dict'>
Output:
{'name': 'John', 'age': 30, 'city': 'New York'}
<class 'dict'>
এখানে, JSON স্ট্রিংটিকে Python Dictionary তে রূপান্তর করা হয়েছে। JSON অবজেক্টের মধ্যে কীগুলোর মান Python Dictionary-এর কীগুলোর সাথে মেলে।
2. JSON ফাইল থেকে ডেটা পার্স করা (json.load())
json.load() ফাংশনটি JSON ফাইল থেকে ডেটা পড়তে ব্যবহৃত হয়। এটি JSON ডেটাকে Python ডেটা স্ট্রাকচারে রূপান্তর করে।
import json
# JSON ফাইল পড়ার জন্য
with open('data.json') as file:
data = json.load(file)
print(data)
data.json ফাইলের উদাহরণ:
{
"name": "Alice",
"age": 25,
"city": "Los Angeles"
}
এখানে, data.json ফাইলটি পড়া হবে এবং JSON ডেটা Python Dictionary তে রূপান্তরিত হবে।
3. Python ডেটা স্ট্রাকচারকে JSON স্ট্রিং এ রূপান্তর করা (json.dumps())
json.dumps() ফাংশনটি Python ডেটা স্ট্রাকচারকে JSON স্ট্রিং এ রূপান্তর করে।
import json
# Python ডেটা স্ট্রাকচার
data = {
"name": "John",
"age": 30,
"city": "New York"
}
# Python Dictionary কে JSON স্ট্রিং এ রূপান্তর করা
json_data = json.dumps(data)
print(json_data)
print(type(json_data)) # <class 'str'>
Output:
{"name": "John", "age": 30, "city": "New York"}
<class 'str'>
এখানে, Python Dictionary কে JSON ফরম্যাটের স্ট্রিং এ রূপান্তরিত করা হয়েছে।
4. JSON ফাইল এ ডেটা সেভ করা (json.dump())
json.dump() ফাংশনটি Python ডেটা স্ট্রাকচারকে JSON ফাইল এ সেভ করতে ব্যবহৃত হয়।
import json
data = {
"name": "Bob",
"age": 25,
"city": "Los Angeles"
}
# Python Dictionary কে JSON ফাইলে সেভ করা
with open('output.json', 'w') as file:
json.dump(data, file)
এখানে, output.json ফাইলের মধ্যে Python Dictionary এর ডেটা JSON ফরম্যাটে সংরক্ষণ করা হবে।
JSON পার্সিং এর অন্যান্য গুরুত্বপূর্ণ দিক
1. Indentation ব্যবহার করে JSON স্ট্রিং ফরম্যাটিং
json.dumps() ফাংশনে indent আর্গুমেন্ট ব্যবহার করে JSON স্ট্রিংটি সুন্দরভাবে ইন্ডেন্ট করা যায়।
import json
data = {
"name": "John",
"age": 30,
"city": "New York"
}
# JSON স্ট্রিং ইন্ডেন্ট করা
json_data = json.dumps(data, indent=4)
print(json_data)
Output:
{
"name": "John",
"age": 30,
"city": "New York"
}
এখানে, indent=4 ব্যবহার করে JSON স্ট্রিংটি ৪ স্পেসের ইন্ডেন্টেশন সহ ফরম্যাট করা হয়েছে।
2. JSON ডেটা ফাইল থেকে UTF-8 এ রিডিং
যখন JSON ফাইলটিতে বিশেষ অক্ষর (যেমন ইউনিকোড অক্ষর) থাকে, তখন encoding='utf-8' প্যারামিটার ব্যবহার করে ফাইলটি সঠিকভাবে পড়তে হবে।
import json
with open('data.json', encoding='utf-8') as file:
data = json.load(file)
print(data)
সারাংশ
JSON (JavaScript Object Notation) ফরম্যাটটি Python এ ডেটা পার্স এবং স্টোর করার জন্য অত্যন্ত জনপ্রিয়। Python এর json মডিউলটি JSON ডেটা সহজভাবে পার্স করতে এবং ডেটাকে JSON স্ট্রিং বা ফরম্যাটে রূপান্তর করতে সাহায্য করে। json.loads(), json.dumps(), json.load(), এবং json.dump() ফাংশনগুলির মাধ্যমে JSON ডেটা পরিচালনা করা যায়, যা ওয়েব অ্যাপ্লিকেশন বা API এর সাথে ডেটা এক্সচেঞ্জের জন্য অত্যন্ত কার্যকর।
Read more